HAPPY BOOKSGIVING
Use code BOOKSGIVING during checkout to save 40%-55% on books and eBooks. Shop now.
Register your product to gain access to bonus material or receive a coupon.
“Ryan clearly understands the GWT value proposition and how GWT integrates into a diverse web technology stack–and not just in a theoretical way. With the popularity of gpokr.com and kdice.com, Ryan can speak with the authority of concrete success.”
–Bruce Johnson, creator of Google Web Toolkit
“This book distinguishes itself from other books on GWT in that it walks through the entire process of building several nontrivial GWT applications, not the toy applications that most books present.”
–R. Mark Volkmann, Object Computing, Inc.
“Google™ Web Toolkit Applications is an excellent resource for any GWT developer. Solutions to challenges commonly encountered in GWT are presented through the design and development of actual applications. The applications developed throughout the text demonstrate best practices from simple UI design all the way to custom code generation, and are presented with little pretext about the amount of Java knowledge a given developer may have. Advanced concepts are not withheld but are presented in a way that will be understood by both novice and seasoned developers alike. Good application development practices and proper Model View Controller design is reinforced throughout the book, nearly guaranteeing that the reader will come away a better programmer. “
–Jason Essington, Senior Web/Java Engineer, Green River Computing
“Dewsbury’s Google™ Web Toolkit Applications is a book for both experts and beginner programmers who want to discover this open source Java software development framework, as well as write Ajax applications. A very detailed book!”
–Massimo Nardone, Advisory IT Security Architect
Accelerate and Simplify Ajax Development with Google Web Toolkit
Get the edge you need to deliver exceptional user experiences with Google™ Web Toolkit Applications, a guidebook that provides web developers with core information and instructions for creating rich web applications. Whether you’re a developer who needs to build a high-performance front end for Java, PHP, or Ruby applications, or to integrate with external web services, this resource from expert Google Web Toolkit (GWT) developer Ryan Dewsbury delivers the in-depth coverage you’ll need.
In this valuable book, insider Ryan Dewsbury provides instructions for using the robust tool set and gets you on your way to creating first-class web applications by providing a comprehensive overview of GWT technology. In addition, he shares his “in-the-trenches” insights on
Building elegant and responsive user interfaces with Cascading Style Sheets and GWT’s Widgets and Panels
Creating seamless user experiences through asynchronous communication with HTTP, REST, JSON/JSONP, and RPC Interoperating with web standards–such as XML, RSS, and Atom–and web services–such as Google Maps, Amazon Books, Yahoo! Search, Flickr, and Blogger
Overcoming browser security restrictions, such as HTTP’s two-connection limit and the Same-Origin policy
Accelerating development, using software engineering, code generation, internationalization, application patterns, and Java tools
Deploying for optimal performance with resource compression and caching
Building five non-trivial applications: a gadget application with a rich drag-and-drop interface, a multi-search application that makes requests to many search engines, a blog editor application for managing entries across multiple blogs, a web-based instant messenger, and a database manager for a traditional web page
This practical guide to GWT introduces you to the technology; provides techniques, tips, and examples; and puts you on the road to delivering top-notch user experiences for your web applications.
Content Providers: Android's Data Sharing Mechanisms
Please visit the author's website at gwtapps.com and www.rdews.com
See the First Safari “Search This Book” Widget on Ryan's Sites
PTG and Safari Books Online have collaborated to launch a beta release of a "Search This Book" widget for integration into the websites of technical book authors. The widget enhances the experience for visitors by enabling them to go beyond the book description and to locate relevant content from within the book by conducting full-text searches using the widget. Read the announcement.
Software Engineering for Ajax Using the Google Web Toolkit
Preface xvii
About the Author xxiii
Part I: Understanding the Google Web Toolkit 1
Chapter 1: First Steps with the Google Web Toolkit 3
The Emergence of Ajax 3
Rethinking Web Applications 5
Software Engineering for Ajax 8
Evaluating Your Background 11
The Importance of Application Development Skills 14
A Quick Tutorial 16
Overview of Toolkit Packages 30
Overview of GWT Applications 34
Summary 36
Chapter 2: User Interface Library Overview 37
Static Widgets 38
Form Widgets 47
Complex Widgets 63
Simple Layout Panels 70
Complex Layout Panels 80
Simple Container Panels 84
Complex Container Panels 87
User Interface Framework Glue 95
Summary 103
Chapter 3: Server Integration Techniques 105
Basic Server Integration Techniques 105
Using Data Format Libraries 117
Third-Party Server Integration 125
Advanced Server Integration Techniques 128
Summary 137
Chapter 4: Software Engineering for Ajax 139
Setting Up the Development Environment 139
Adding Projects to Eclipse 145
Writing Java Code in Eclipse 149
Debugging in Eclipse 158
Organizing Your Application Structure 164
Testing Applications 168
Building and Sharing Modules 180
Deploying Applications 183
Summary 190
Chapter 5: Using the Toolkit Effectively 191
Using Asynchronous Programming 191
Handling the Back Button 197
Creating Elegant Interfaces with CSS 200
Extending the Toolkit 212
Internationalizing Applications 226
Generating Code 235
Improving Performance 242
Summary 251
Part II: Rich Web Applications by Example 253
Chapter 6: Gadget Desktop Application 255
Using the Container Application Pattern 256
Designing the Model 257
Building a Columned Container Interface 264
Putting Gadgets in the View 274
Creating Drag-and-Drop Gadgets 283
Cleaning Up User Interfaces with CSS 290
Adding Persistency 300
Using Other JavaScript Libraries 309
Summary 318
Chapter 7: Multi-Search Application 319
Using the Aggregator Application Pattern 319
Multi-Search Design 321
The Model 322
The View 324
The Controller 331
Importing Structured Data Formats 334
Integrating with Yahoo! Search 340
Integrating with Google Base 344
Integrating with Flickr Search 348
Integrating with Amazon Search 354
Summary 358
Chapter 8: Blog Editor Application 361
Using the Workspace Application Pattern 361
Building a Web Service Client 363
Blog Editor Design 365
The Model 365
Building a Multiple Document View 367
Adding Rich Text Editing 381
The LoadingPanel Widget 386
The TitleCommandBar Widget 388
Designing the Application Controller 390
Building an HTTP Proxy Servlet 392
Integrating with the Blogger API 401
Summary 421
Chapter 9: Instant Messenger Application 423
Using the Collaborator Application Pattern 423
Instant Messenger Design 425
The Model 426
Building a Complementary Interface 429
The Controller Overview 447
Using GWT-RPC 450
Connecting to the Server 456
Adding RPC Events 458
The Instant Messenger Server 465
Using Server-Side Advanced IO 470
Summary 478
Chapter 10: Database Editor Application 479
Using the Manager Application Pattern 480
Designing the Model 482
Using Asynchronous Data Access Objects 485
Building a Two-Paned Editor Interface 488
Server Integration Overview 507
Writing a Generic GWT Code Generator 510
Integrating with Action-Based PHP Scripts 522
Integrating with a RESTful Ruby on Rails Application 530
Integrating with a GWT-RPC Servlet 542
Summary 554
Index 555